For interconnecting a plurality of processors, several principles can be used. A system can either include a central unit exercising control over all communication transactions in the network, or it can comprise several units of equal ranking, i.e. a peer-type system with mutual or distributed control. Further, the processors can participate in handling of the data transmission tasks, but there can also be systems providing separate communication handling units. According to another aspect, one can distinguish between systems allowing only a single communication connection to be in existence, and other systems which enable a number of simultaneous connections.
U.S. Pat. No. 3,761,879 (Brandsma et al.) discloses a switching unit for selectively interconnecting plural processor modules with plural storage modules. No central control is provided, and several connections can exist simultaneously. However, neither transmission of data between remote locations, nor a peer-to-peer exchange between processors are involved.
In U.S. Pat. No. 3,806,885 (Moore) an arrangement is described for interconnecting multiple computing subsystems without central control. But only one subsystem is the master at any time, and mastership is passed from processor to processor by a polling mechanism.
A loop arrangement for data transfers between several subsystems is disclosed in U.S. Pat. No. 3,821,713 (Broadhurst et al.). This arrangement allows simultaneous transfers between selected pairs of subsystems. It requires, however, a separate loop for each of the interconnected subsystems, and it is a receiver-driven system, i.e. no possibility is provided to initiate a transfer operation from a sending unit.
U.S. Pat. No. 4,007,450 (Haibt et al.) describes a multicomputer system including a loop interconnecting a plurality of computer nodes. This system allows updating of identical data sets which are stored in different nodes, without requiring a central control unit. In each data set updating operation, one node is the master node, while the other nodes storing the same data set that must be updated are slave nodes. A mutual frame exchange establishes an updating operation. The system is limited, however, to a particular application, i.e. data set management. Furthermore, the data link control for the communication medium is integrated with the application, i.e. data set management. Hence, the application must be intimately aware of whether the process it communicates with is remote or local, because the two cases require different handling.
Cour et al. disclose in U.S. Pat. No. 4,019,176 a communication system for a plurality of stations. The stations use a single common channel in the form of a loop, and no central control is provided. There is, however, no pairwise cooperation for multiple simultaneous connections. Rather, only one station transmits at a time, and the right to transmit is passed from one station to the next according to a predetermined list.
U.S. Pat. No. 4,058,681 (Imaizumi) describes a transmission network comprising plural stations which are connected in parallel relationship to a bus. Each station has communication control means and a processor, and no central control is provided. Also in this system, only one station has control over the bus at any time, and this control function is transferred from station to station.
U.S. Pat. Nos. 3,714,635 (Hamilton et al.) and 3,842,405 (Key et al.) disclose Input/Output arrangements for a computer, comprising adapter units that are programmable or microprogrammable for adaptation to different line characteristics or I/O unit characteristics. This approach eliminates the need for different adapters for each of the different types of modems or lines or I/O devices. The adapters in these arrangements thus present a given interface to the computer or its communications control unit regardless of attached devices or lines. These patents do not disclose, however, adapter or interface units for peer-to-peer type intercommunication systems.
It is an object of the present invention to provide a processor intercommunication system including a plurality of communication stations which can cooperate in a peer-type fashion.
It is a further object to provide such intercommunication system enabling multiple simultaneous sessions between pairs of stations or processors, in which each station can take the initiative to become temporarily a master for one of such sessions.
Another object of the invention is to provide a multi-station processor intercommunication system allowing peer-to-peer sessions for all types of applications in the processors, and in which each application program in a processor is free of communication requirements and restrictions, and need not be aware whether the process it communicates with is in a locally attached I/O device or in a remote processor attached to another station.
A further object of the invention is a multiple processor intercommunication system in which the data link control is separated from the application programs, but also from the link access mechanism.
Another object is the provision of an effective communication system between a plurality of processors that are not very large and complex, by providing circuit means for certain link control functions to avoid programming efforts for these functions in the processors.
One other object is a multiple-station processor intercommunication system in which each session between stations is concluded by complete and correct updating of status information.
These and other objects and advantages of the invention will be evident from the following description of a preferred embodiment of the invention in connection with the drawings.